// pages/goods/detail/index.js
import { reqGoodsInfo} from "../../../api/goods"
import {reqAddCart,reqCartList} from '@/api/cart'
import {userBehavior} from "../../../behavior/userBehavior"
Page({
  behaviors:[userBehavior],
  // 页面的初始数据
  data: {
	  goodsInfo: {}, // 商品详情
    show: false, // 控制加入购物车和立即购买弹框的显示
    count: 1, // 商品购买数量，默认是 1
    blessing: '', // 祝福语
    bugNow:0,// 0加入购物车1立即购买
    allCount:'',// 购物车商品的购买数量
  },

  // 加入购物车
  async handleAddcart() {
    // console.log('token',this.data.token)
    // const {token} = this.data
    // if(!token){
    //  const res=  await  wx.modal({
    //     title:'当前没有登录，去登录？'
    //   })
    //   if(res){
    //     wx.navigateTo({
    //       url:`/pages/login/login`
    //     })
    //   }
    //   return
    // }
    this.setData({
      show: true,
      bugNow: 0
    })
  },

  // 立即购买
  handeGotoBuy() {
    this.setData({
      show: true,
      bugNow:1
    })
  },

  // 点击关闭弹框时触发的回调
  onClose() {
    this.setData({ show: false })
  },
  // 点击弹框确定按钮
  async handlerSubmint(){
    const {token,count, blessing,bugNow}= this.data
    if(!token){
      const res=  await  wx.modal({
         title:'当前没有登录，去登录？'
       })
       if(res){
         wx.navigateTo({
           url:`/pages/login/login`
         })
       }
       return
    }
    if(bugNow===0){
      this.reqAddCart()
      this.setData({
        show: false
      })
    }else{
      //立即购买,跳转到结算页面页面
      wx.navigateTo({
        url: `/modules/orderPayModule/pages/order/detail/detail?goodsId=${this.goodsId}&blessing=${blessing}`
      })
    }

  },

  // 监听是否更改了购买数量
  onChangeGoodsCount(event) {
    console.log(event.detail)
    this.setData({count:Number(event.detail)})
  },
  async getGoodsInfo(id){
    const res = await reqGoodsInfo(id)
    // console.log('11',res)
    this.setData({
      goodsInfo:res.data
    })
  },
  // 全屏预览图片
  previewImage(){
    wx.previewImage({
      current: '', // 当前显示图片的http链接
      urls: this.data.goodsInfo.detailList // 需要预览的图片http链接列表
    })
  },
  // 添加到购物车接口请求
  async reqAddCart(){
    const {count, blessing}= this.data
    const params = {
      count,
      blessing,
      goodsId:this.goodsId
    }
    const res = await reqAddCart(params)
    if(res.code === 200){
      wx.toast({title:'加入购物车成功'})
      this.getCartCount()//重新计算购物车数据
    }
  },
// 获取购物车商品的数量
  async getCartCount(){
    const {token} =this.data
    //先判断用户是否登录,如果登录计算购物车数据
    if(!token) return
    const res = await reqCartList()
     // 判断购物车中是否存在商品
    if (res.data.length !== 0) {
      // 累加得出的商品购买数量
      let allCount = 0

      res.data.forEach((item) => {
        allCount += item.count
      })

      this.setData({
        // info 属性的属性值要求是 字符串类型
        // 而且如果购买的数量大于 99，页面上需要展示 99+
        allCount: (allCount > 99 ? '99+' : allCount) + ''
      })
    }
  },
  onLoad(options){
    this.goodsId = options.goodsId// 将id挂载到全局，方便其他地方使用
    this.getGoodsInfo(options.goodsId)
    this.getCartCount()
  },
  	// 实现转发功能，转发给好友、群聊
	onShareAppMessage(){

	},
	// 能够把小程序分享到朋友圈
	onShareTimeline(){
		
	}
})
